Weapons Factory UT

Last updated: 12th May 2001

Version: 106a

**ALPHA** This mod is in its alpha stages, and parts of it may not be fully implemented yet.

Contents

Introduction

Weapons Factory Unreal Tournament is a class based Capture the Flag modification inspired by the popular Quake mods, Weapons Factory for Quake 2 and Weapons Factory Arena as well as other popular modifications from past first person shooters. Originally designed by Tom and Gregg Reno to fill the void left by Team Fortress after Quake 2 was released, they brought a lightning fast version of class-based teamplay that the WFUT team and it's sister mod team WFS have carried on. Two teams battle over a flag where reflex and strategy play an equal role.

Installing Weapons Factory UT

After installing Weapons Factory UT make sure you read the Joining a Game section below, and if you intend to host a server please read the Hosting a Server section also.

UMOD Version

Windows: Double click on the umod file to install. If no programs are associated with theUMOD file type you can install it by extracting "wfut_alpha.umod" to the "<UT>\System\" directory (where <UT> is the location UT is installed, eg. "C:\UnrealTournament") and entering the following command from the command prompt:

<UT>\System\setup.exe install wfut_alpha.umod

ZIP Version

Extract the individual files from the zip to the following folders in the Unreal Tournament root directory, or extract the whole zip file to your Unreal Tournament root directory with the folder names option.

File Name UT Folder
WFMedia.u \System
WFSystem.u \System
WFCode.u \System
WFCode.int \System
WFStockCTFMapData.u \System
WFStockCTFMapData.int \System
def_numkeys.bind \System
WFSkins.utx \Textures
wfut_readme.htm \Help
wfut_logo.bmp \Help

Joining a game

Once you've installed Weapons Factory, make sure that you get familiar with the game by looking over (at least briefly) the "Game Overview" section of this readme file. If you'd rather skip that, and are eager for some instant action, then you should make sure that you've at least set up the following before you join a Weapons Factory server:

  1. Key bindings. You can play WFUT using only 3 extra key bindings if needed, and these commands are as follows:
    "special" -- Default class ability. Do the default action for your current class (usually displaying a menu).
    "button gren1" -- activates your 1st grenade slot
    "button gren2" -- activates your 2nd grenade slot
    _
  2. Menu keys. The number menus in WFUT use the default UT weapon selection keys to feedback menu choices. So, if you have changed the default UT key layout of the weapon selection keys (ie. keys 1 to 0) you'll need to rebind some keys to "switchweapon N" where N is from 1 to10. There is an exec file that will auto-bind the main number keys (1 to 0) to the default UT config layout in UT for these keys called "def_numkeys.bind" which can be executed at the console prompt in UT either by typing "exec def_numkeys.bind", or by typing "restore_numkeys" during a WFUT game.

Other than that, all you need to do is find yourself a game server :o)

Hosting a server

To host a server you can either start one from within UT itself using the game menus, or you can launch one from a command line or batch file. Before you start one though, there are a few things that you should check first.

  1. The ServerPackages list. For the game to work properly at all over the net, check that these lines have been added to the [Engine.GameEngine] section of your UnrealTournament.ini found in the UT "\System" directory.

    ServerPackages=WFSkins
    ServerPackages=WFMedia
    ServerPackages=WFSystem
    ServerPackages=WFCode
    __
  2. Connection Timout. The default UT connection timeout for players loging in to a WFUT game is far too short since the player has to load the UT menu system when they connect which adds to the overrall connection time. In the [IpDrv.TcpNetDriver] section of UnrealTournament.ini, make sure that these values are set to ensure players have enough time to connect to the server.

    ConnectionTimeout=30.0
    InitialConnectTimeout=90.0

    Setting "ConnectionTimout" to 30.0 and setting "InitialConnectionTimout" to 90.0 is important, otherwise its possible a player will time out while loading the menu system when connecting to the game. However, using values for InitialConnectionTimout that are too high will cause the UT creeping ping problem, so the value needs to be a good compromise between client connection time, and minimising the UT creeping ping bug.

    You may need to tweek this a bit to get a good value for your server.

    Note: the values mentioned in the 105a umod file are wrong so adjust you're ini files if you installed from the 105a umod.

If you are setting up a batch file to run a WFUT server, the command line to launch the game is as follows:

ucc server <map>?Game=WFCode.WFGame <any other options>

Where <map> is the startup map for the server, and <any other options> are other options that you'd like to run the server using. Swing by The Admin Page for some detailed info on setting up a server.

Game Overview

Weapons Factory Unreal Tournament (WFUT) consists of two teams trying to capture each other's flag. Each team is composed of individual classes, ten in all, each possessing their own roles, abilities and weapons. Some are designed to guard the flag, some to grab the enemy's flag and some are suited for midfield and support. Each player spawns fully armored and with all of their classes' respective weapons. Players restock by picking up backpacks, armor and health.

WFUT currently supports 3 modes of Capture the Flag: Normal touch return like standard UT-CTF, Return Delay where the flag lies for a server configurable amount of time before returning to its base, and Carry Return; a mode where players are required to manually carry their flag back to its base after killing an enemy flag carrier. Due to the nature of some maps and players, we do not recommend public servers running Carry Return until we can work out the kinks inherent in this mode. We left it as a server option for those who wish to play on LAN or single player.

WFUT Classes

There are ten classes in WFUT:

The Recon is primarily an offensive class who's sole design is to grab the flag. The thrust ability keeps the Recon constantly putting pressure on the enemy defense while her lack of firepower keeps her from hanging around too long. The Recon cannot carry the flag and thrust at the same time so she must rely on quick moves and the Recon Defense Unit (RDU) to keep her alive. The RDU's primary fire mode is a charged blast that dishes out moderate damage and will send any player flying in it's radius of effect when it is released. The secondary mode is an energy shield that completely protects the Recon from all frontal damage. It starts out with fifty units and decreases ten units every second while it's activated and regenerates at two units per second when inactive.

Health - 75
Armor - 50
Grenades - Frag Grenade, Concussion Grenade
Weapons - Recon Defense Unit, Mini-Flak, Dual Pistols
Special Abilities - Thrust, Neuro-Optical Heads Up Display (allows her to see enemies from a distance and to identify them)

Recon Specific Command Binds - (see Advanced WFUT Configuration below)

special thrust -activates the Recon's thrust ability

The demoman specialises in explosives. His special ability is laying up to four laser trip mines which explode when an enemy crosses the laser, although the Demoman and his team mates will not set them off. His primary weapon is the Grenade Laucher which fires powerful grenades with the alternate fire propelling them over long distances. He also has a pipebomb launcher which shoots pipebombs in primary mode and they can be detonated using the alternate fire. His secondary grenade, the Freeze Grenade can be used to freeze enemies by placing them in unsuspecting places. He has formidable equipment for defense but the pipebombs and trip mines can easily be destroyed by any weapon with splash damage. It's recommended to be sneaky with them.

Health - 100
Armor - 150
Grenades - Frag Grenade, Freeze Grenade
Weapons - Grenade Launcher, Mini Flak, Pipebomb Launcher
Special Abilities - Laser Trip Mine

Demoman Specific Command Binds - (see Advanced WFUT Configuration below)

special setmine - activates a trip mine (up to 4)

special removemine - removes a trip mine when lined up in crosshair in range

The Marine is the "Swiss Army Knife" of WFUT. His speed and weaponry make him versatile at both offense and defense. His secondary grenade, the Turret Grenade, hovers in the air and shoots shockbeams at any enemy within its line of sight until it times out, runs out of ammo, or is destroyed by an enemy. His rocket launcher fires powerful rockets in primary and the alt-fire shoots limited homing rockets that do half the damage of the primary mode rockets.

Health - 100
Armor - 150
Grenades -
Frag Grenade, Turret Grenade
Weapons - Rocket Launcher, Hyperblaster, Mini Flak
Special Abilities - None

Marine Specific Command Binds - (see Advanced WFUT Configuration below)

None.

The Engineer's main purpose is to set up and upgrade Autocannons to aid in defending the flag. He can also build Ammo Depots which players can restock there ammo and armor from. Every twenty seconds the depot gives out a backpack a player can pick up. He can also deploy an alarm to warn of incoming enemies. A good engineer stays near his gun and is adept at placing the Autocannon in spots where it is most effective (read: the flag room usually).

Health - 100
Armor - 75
Grenades - Frag Grenade, Tesla Coil Grenade
Weapons - Railgun, Tesla Gun, Robotic Hand, Mini Flak
Special Abilities - Building, upgrading, and reloading/repairing Autocannons, building Ammo Depots, deploying Alarms

Engineer Specific Command Binds - (see Advanced WFUT Configuration below)

special build -build sentry gun

special remove -remove sentry gun

special addammo -add ammo to sentry gun

special repair -repair damaged sentry gun

special upgrade -upgrade the level of the sentry gun (up to level three)

special rotatel -rotate the sentry gun to the left

special rotater -rotate the sentry gun to the right

special destruct -remote detonate sentry gun

special builddepot -build supply depot

special destructdepot -remote detonate supply depot

special deployalarm - place an alarm (only 1 allowed)

Enginner event list:

s_depot_deployed - supply depot deployed

cannon_deployed - sentry gun deployed

cannon_upgraded - sentry gun upgraded

The Sniper's main focus is taking out key enemy offense. The Siper Rifle can do ungodly amounts of damage as well as slow enemy players down when they are hit in the leg with it. Only a Field Medic, Healing Depot, or death can cure legshots. The Sniper has very little armor however, so it's in a players interest to stay hidden and avoid one on one combat in close quarters with other classes.

Health - 100
Armor - 25
Grenades - Frag Grenade
Weapons - Sniper Rifle, Enforcer
Special Abilities - None

Sniper Specific Command Binds - (see Advanced WFUT Configuration below)

None.

The Pyro Tech is a master of distraction. His ability to light enemies on fire is fantastic for weakening the enemy, making him best fit for midfield. His Napalm Rocket Launcher can light up enemies at long distances and pity the poor enemy player that gets close enough to his Flamethrower.

Health - 100
Armor - 100
Grenades - Frag Grenade, Flare Grenade
Weapons - Napalm Rocket Launcher, Flamethrower, Mini Flak
Special Abilities - None

Pyro Tech Specific Command Binds - (see Advanced WFUT Configuration below)

None.

The Gunner is the penultimate defensive class. Whereas the Autocannon is only as smart as the Engineer behind it, the Gunner is human, well-armored and mobile, has unheard of firepower backing her up and her Instagib Lasers can make tomato soup out of any class unlucky enough to "see the light". Her trademark weapon is the Chaincannon, a lead spewing messenger of death that no one should ever knowingly step in front of. She is a slow class though and runs out of ammo very quickly. A good defender will support their Gunner.

Health - 120
Armor - 199
Grenades - Frag Grenade, Decloaking Mine
Weapons - Chaincannon, Minigun, Enforcer
Special Abilities - Laser Instagib Defense, deploying Alarms

Gunner Specific Command Binds - Advanced WFUT Configuration below)(see

special setmine - deploys the Instagib Laser (only 1 allowed)

special removemine - removes the Instagib Laser, if within range and in the crosshair

special deployalarm - place an alarm (only 1 allowed)

The Cyborg is the offense's answer to the Autocannon. The Cyborg has the ability to self-destruct, taking out anyone within range of him when he explodes. Once activated his Kamikaze ability takes 10 seconds until detonation. He can lay powerful plasma bombs that explode at ten, twenty, and thirty seconds depending on the which one the Cyborg decides but he cannot do this while his Kamikaze ability is activated. It also takes time to set a plasma bomb, length depending on the power of the bomb. He also carries the Anti-Sentry Rocket Launcher which fires slow moving missles that home in on Autocannons in primary mode. The alternate mode missles fire in straight trajectories dishing out double the damage of primaries. His EMP grenade disables Autocannons for fifteen seconds and disables Turret Grenades as well as energy charged weapons and devices.

Health - 120
Armor - 199
Grenades - Frag Grenade, EMP Grenade
Weapons - Anti-Sentry Rocket Launcher (ASRL), Plasma Laser, Mini Flak
Special Abilities - Laser Instagib Defense, deploying Alarms

Cyborg Specific Command Binds - (see Advanced WFUT Configuration below)

special plasma [small | medium | large] - arm plasma bomb (small, medium, or large)

For example: special plasma medium would set a medium plasma bomb

special kami - activate Kamikaze self destruct sequence

Cyborg event list:

s_plasma_arming - started arming small plasma

s_plasma_armed - small plasma armed

m_plasma_arming - started arming medium plasma

m_plasma_armed - medium plasma armed

l_plasma_arming - started arming large plasma

l_plasma_armed - large plasma armed

kami - kamikaze activated

There is nothing quite like having an Infiltrator in your flagroom and you don't know where. The feeling of paranoia is something to experience. Also, when a team mate waves to you while you're defending and all of a sudden he turns the other color and runs off with your flag, you won't forget it. He can cloak himself, making him hard to see when he is moving and completely invisible when standing still. His cloaking ability slowly runs out when in use and slowly regenerates when not in use. This class isn't complete but is already a blast to play.

Health - 100
Armor - 50
Grenades - Frag Grenade, Flash Grenade
Weapons - Enforcer
Special Abilities - Disguising as a team member or enemy team member, cloaking

Infiltrator Specific Command Binds - (see Advanced WFUT Configuration below)

special cloak - enables the Infiltrator's cloaking ability

special disguise [red | blue | green | gold] [recon | field medic | infiltrator | sniper | pyrotech | demoman | marine | cyborg | gunner] - change disguise (if no team is specified and no disguise is active then the enemy teams colour is used by default, otherwise if a disguise is already active then the current disguise team is used)

For example: special disguise red recon would disguise you as a red recon

A Field Medic's job is support. Coupled with an Engineer, they are a mobile spawn room capable of bringing a team to victory. The Field Medic has the ability to drop Healing Depots as well as using her Medkit to heal them when a depot can't be around. Field Medics also have the nasty habit of using biological weapons to spite the enemy. The plague grenade leaks out toxic gas and so does the alternate fire of the Medkit at a short range. If a Field Medic hits an infected enemy with her Bio-Rifle, the infection damage rate is doubled. If you see an enemy Field Medic, take them out immediately.

Health - 100

Armor - 50

Grenades - Frag Grenade, Plague Grenade

Weapons - Medkit, Machine Gun, Bio-Rifle

Special Abilities - deploying Healing Depots

Field Medic Specific Command Binds - (see Advanced WFUT Configuration below)

special deploydepot - deploys a Healing Depot

Field Medic event list:

h_depot_deployed - healing depot deployed

Game Configuration

To configure the basic WFUT game bindings in UT, you can use the "WFUT Basic Key Bindings" menu which can be displayed by either selecting the "WFUT Basic Key Bindings" item from the "Mod" menu, or by typing "keyconfig" at the console while in a game.

There are three basic binds a player will want to configure to be able to play WFUT effectively beyond UT's default configuration. The console commands are "special", "button gren1" and "button gren2". The first bind, "special" is used to bring up the Specials Menu which a class uses to access it's individual abilities. Once the menu is onscreen, use the number keys to choose from the individual menu options. To bind these commands start a game and pull down the console using the quick console key (usually Tab) or the Tilde (~) key for the main console, then type these in seperately:

set input <key> special

set input <key> button gren1

set input <key> button gren2

Replace <key> with your key of choice, such as w.

The " button gren1" and "button gren2" bindings are input buttons and the longer you hold the key down, the further the grenade from that slot will be thrown. You can access all the class specific abilities through the "special" command so it is possible to play WFUT with only three key bindings. Each individual class ability can be bound also (for example, binding a key to cloak yourself as an Infiltrator); more on this below.

Players will also want to bind certain game commands to change team, change class, join teams that are passworded and help other team members by dropping ammo. The currently supported commands are:

setclass <classname> - Change the player class to <classname> Will display the class menu of no class name specified. If used during play, it will set the class that you will start as after respawning.

changeclass <classname> - (Same as SetClass)

keyconfig - display basic key bindings menu

special <command> - execute a player class command (default command for the current player class is used if <command> not specified)

classhelp - displays a help dialog for the current player class

team [red | blue | green | gold] - change team

setteampassword <password> - sets the team password that'll be used when changing teams (only used when team passwords are enabled)

dropammo <amount> - drop <amount> ammo from selected weapon, if no amount is specified, then the default amount for the ammo type is used

Although WFUT can be played with only three extra key bindings on top of the default key bindings, players have the option to bind keys to specific special abilities directly such as the Cyborg's Kamikaze ability. For example:

set input k special kami

This binds the keyboard key k to the Kami ability of the Cyborg.

On top of that players have the option of having a different binding profile for each class to load automatically whenever a player spawns as that class. All it requires is typing the bindings into a text file of the name of the class and it must be saved with the file extension ".exec" in your Unrealtournament\System directory (for example "recon.exec"). Each bind should occupy its own line in the file. You can enable this feature by either typing "AutoClassExecs 1" at the console during a game, or by using the basic key bindings menu that can be displayed by entering "keyconfig" at the console during a game, or by selecting the "WFUT Basic Key Bindings" item from the UT "Mod" menu.

Once this is done, a message should appear at the top left of your screen notifying you that your file has executed whenever you first spawn as a particular class. If you see nothing then you missed a step somewhere. If you see it say "Couldn't find Recon.exec" or something similar, then you have not saved it in the System directory of UT or have not named it correctly. Make sure your file name isn't "Recon.exec.txt", for example.

Due the the many mods that exist for Unreal Tournament and the key bindings they require, it is recommended to also include .exec files for any mods you like to play other than Weapons Factory. You can maually execute these files after you have finished playing (or whenever) by accessing the console and typing exec <filename>.exec. This can also be bound to a key: set input <key> exec <filname>.exec. To those that can't be bothered, consider that you only need three key bindings to play WFUT.

These are basically automatic commands triggered by a class based event, like arming a plasma, or deploying a cannon. The SetEvent command can be used to set up an even list for each class:

SetEvent [event]:[command]:[text]

Where [event] is the name of the event, [command] is the command triggered, and [text] is the parameter string passed to the command. See the class descriptions for a list of class specific events that can be used with SetEvent.

The commands currently supported are:

say -- send a global message with the specified text as the message
teamsay -- send a team message with the specified text as the message

Some example SetEvent commands:

SetEvent kami:teamsay:Going kamikaze!
SetEvent cannon_deployed:teamsay:Sentry cannon deployed at %L!

Here is a list of the currently supported chat macros:

%N - player name

%L - player location

%S - player status (health/armor)

%C - player class

%H - player health

%A - player armor

%B - buddies, lists friendly players within radius

%W - player weapon

%T - test code

%% - print the '%' character

An example key bind:

set input <key> teamsay I'm at %L with %H health

Supported Maps

As well as native WFUT maps, the stock CTF levels that came with the original boxed edition of Unreal Tournament are supported through the use of a Map Data Pack; a special script that can pull out uneeded inventory and pickups and have backpacks placed in pre-defined areas throughout the map that all players can utilize. Other than that, any CTF level can be played in Weapons Factory, although its recommended to play the ones made for WFUT or supported through a Map Data Pack.

Bot Support Notes

There is currently no serious Bot support for Weapons Factory UT. That is, you can use the existing bots to practice WFUT, but they have not been coded to handle class-related situations or specific abilities. This is simply because of the open-ended nature of WFUT, in that its difficult to create class based AI that can be easily customised by a 3rd party class set. For example, the default WFUT classes have specific abilities and roles that wouldn't fit a general class-based AI makeup that could be used by a 3rd party to create bot AI for their own classes (see the class creation doc for more info).

At some point in the future it would definately be something worth adding, but considering the amount of work that something like that would involve, and that there are (at least at the time of writing this document) only 2 coders for WFUT and only one of which is full-time, its not really a high priority feature.

Besides, this is supposed to be a multiplayer mod, after all :o)

Referee Mode

Referees can be enabled by setting the referee password in UnrealTournament.ini in the [WFCode.WFRefereeInfo] section. If the section isn't already there, add the following lines to the ini file so that the referee mode can be configured (a configuration menu will be added at a later date).

[WFCode.WFRefereeInfo]
RefereePassword=
MaxReferees=0
bRefChangeLevel=True
bRefKickPlayers=True
bRefKickBanPlayers=True

If the RefereePassword is blank then referee's are disabled. MaxReferees is the maximum number of referees that are allowed during a game, 0 = no limit.

Referee command list

reflogin [password] - login as referee using [password]
reflogout - leave referee mode

ref kick [name] - kick player matching specified name (only works if bRefKickPlayers is set to True)
ref kickban [name] - kick-ban player matching specified name (only works if bRefKickBanPlayers is set to True)

ref viewteam [team] - view players belonging to [team]

ref setmute all [mute] - set mute mode of all players to value ([mute] = 1 to mute, [mute] = 0 to clear mute mode)
ref setmute player [mute] [name] - set mute mode of player name matching [name]
ref setmute playerid [mute] [id] - set mute mode of player id matching [id]
ref setmute team [mute] [team] - set mute mode for team

ref restartmap - reloads the current map
ref changelevel [newmap] - changes to the specified map (only works if bRefChangeMaps is True)

ref startgame - starts a tournament game if bRefStartGame is set to True in [WFCode.WFGame]

ref forceready - forces all players in to ready mode

Frequently Asked Questions

Server Related

Q: When I try to host a server strange things happen like players can't see the player skins properly. What gives?

A: Check that the server packages have been set up correctly as explained in "Hosting a Server" section above.

Q: Why can't I connect to a server sometimes? Also, people are having trouble connecting to mine.

A: A server must set its ConnectionTimeout and its InitialConnectTimeout as explained in "Hosting a Server" in the WFUT readme file.

Q: I have some custom flags that I made but people connecting to my server can't see them. Why?

A: You need to add the name of your flag's package to the ServerPackages list in the Unrealtournament.ini file just like all the other WFUT packages.

Gameplay

Q: What does the alternate fire of the Gunner's Chaincannon do?

A: It keeps the barrel spinning so the Gunner can start firing again without worrying about spin-up/spin-down time. It's useful when enemies are attacking in waves and the Gunner doesn't have time to reload.

Configuration

Q: Can I have seperate configurations for each class?

A: Yes. Refer to "Advanced WFUT Configuration" in the WFUT readme file for more information.

Credits

WFUT Team

  Bliss Music, Sound FX
  ChessMess Development Message Board Admin.
  Col Kassad Lead Modeler, Mapper, Programmer
  Crash Override Modeler
  Craz-e Canuck Modeler
  Headache WFS Member (consultant)
  Lord Cheez Tester
  KazeX Modeler, Class Modeler
  Moose Lead Skinner
  Ob1 Lead Programmer
  Penguinisto Development Server Admin, Mapper, Sound FX
  spoon Project Lead, Web Master
  WarrioR IRC #wfut Channel Administrator
  Yoda Programmer
  Yuroki Graphic Artist

Other Credits

  crack_addict Chat macro code
  Mongo Crouching code
  Decay Prior webpage design

IRC and Forums

  IRC irc.enterthegame.com #wfut
  Forums WFUT Forum

Legal Bit

By installing this mod (hereon referred to as "Weapons Factory UT" or "WFUT") you agree with the following DISCLAIMER. If you have already installed "Weapons Factory UT" and do NOT agree with the following DISCLAIMER, then please UNINSTALL "Weapons Factory UT" from your PC.

DISCLAIMER: "Weapons Factory UT" comes with no guarantee or warrantee (implied or otherwise), and as such we (the "Weapons Factory UT Team") take no responsibility (implied or otherwise) for difficulties or problems (directly or indirectly) that result in using "Weapons Factory UT", or with Unreal Tournament© after you install it.

DISTRIBUTION: You may distribute "Weapons Factory UT" freely, provided that the files contained in the distributed archive remain intact and unchanged. "Weapons Factory UT" is ©2000/2001 Weapons Factory UT Team.


All "Weapons Factory UT" content is ©2001 by the "Weapons Factory UT Team". The "Weapons Factory" name is ©WFS (Weapons Factory Software). Unreal Tournament is ©1999/2000 Epic Games, Inc. All rights reserved. All other trademarks and trade names are properties of their respective owners.